package com.hdd.biz.finance.service;

import com.hdd.biz.finance.dto.WithdrawCreateRequest;
import com.hdd.biz.finance.dto.WithdrawListRequest;
import com.hdd.biz.finance.dto.WithdrawRecordRequest;
import com.hdd.biz.finance.dto.WithdrawVerifyRequest;
import com.hdd.biz.finance.entity.Withdraw;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hdd.dto.SuperResponse;
import io.swagger.models.auth.In;

import java.math.BigDecimal;

/**
 * <p>
 * 提现表 服务类
 * </p>
 *
 * @author fang
 * @since 2021-02-23
 */
public interface WithdrawService extends IService<Withdraw> {


    /**
     * 后台管理 提现列表
     * @param request
     * @return
     */
    SuperResponse withdrawList(WithdrawListRequest request);


    /**
     * 创建提现
     * @return
     */
    SuperResponse createWithdraw(WithdrawCreateRequest request);

    /**
     * 添加提现记录
     * @param userId
     * @param amount
     * @param platform
     * @param account
     * @param real_name
     * @return
     */
    boolean insertWithdraw(String userId, BigDecimal amount,String platform,String account,String real_name);



    int insertWithdraws(String userId, BigDecimal amount,String platform,String account,String real_name);


    /**
     * 提现审核
     * @return
     */
    SuperResponse verifyWithdraw(WithdrawVerifyRequest request);

    /**
     * 微信提现审核
     * @param request
     * @return
     */
    SuperResponse weiXinVerify(WithdrawVerifyRequest request);


    /**
     * 获取我的提现记录
     * @param request
     * @return
     */
    SuperResponse withdrawRecord(WithdrawRecordRequest request);


    Withdraw findWithdrawById(Integer id);



    Double todayWithdraw();
    Double totalWithdraw();
    Double yesterdayWithdraw();
    Double weekWithdraw();
    Double monthWithdraw();

}
